*Data*
clear all
clear mata

*Set working directory
*Load Data*
use "FinalDataset.dta", clear
cd ""

***************************************************************************************************
**************************Table S1: Mean Earnings and Purchasing Power*****************************
***************************************************************************************************
preserve
collapse (mean) MeanPayment Conversion PPPAdjustedMeanEarnings, by(Country)
replace Conversion = round(Conversion, 0.1)
replace PPPAdjustedMeanEarnings = round(PPPAdjustedMeanEarnings, 0.1)

est clear
estpost tabstat MeanPayment Conversion PPPAdjustedMeanEarnings, by(Country) nototal
esttab using "TableS1.tex", cells("MeanPayment Conversion PPPAdjustedMeanEarnings") ///
collabels("Mean Earnings" "PPP Conversion Factor" "PPP-adjusted Earnings", lhs("Country")) ///
noobs nomtitle replace
restore

***************************************************************************************************
**************************Table S2: Mean Earnings and Purchasing Power*****************************
***************************************************************************************************
preserve
bysort UniqueID: keep if _n==1 
collapse (count) UniqueID, by(Country)
ren UniqueID NumIndiv
tempfile Indiv
save `Indiv'
restore

preserve
bysort SessionID: keep if _n==1 
collapse (count) SessionID, by(Country)
ren SessionID NumSessions
tempfile Session
save `Session'
restore

preserve
bysort SessionID matchinggroup: keep if _n==1 
collapse (count) matchinggroup, by(Country)
ren matchinggroup NumsubSessions
tempfile Subsessions
save `Subsessions'
restore

preserve
bysort SessionID period: keep if _n==1 
collapse (count) period, by(Country)
ren period NumPeriods
tempfile NumPeriods
save `NumPeriods'
restore

preserve
bysort SessionID period round: keep if _n==1 
collapse (count) round, by(Country)
ren round NumsubRounds
tempfile NumRounds
save `NumRounds'
restore

preserve
bysort SessionID matchinggroup period group: keep if _n==1 
collapse (count) GroupID, by(Country)
ren GroupID NumGroups
tempfile NumGroups
save `NumGroups'
restore

merge m:1 Country using `Indiv'
drop _merge

merge m:1 Country using `Session'
drop _merge

merge m:1 Country using `Subsessions'
drop _merge

merge m:1 Country using `NumRounds'
drop _merge

merge m:1 Country using `NumGroups'
drop _merge

merge m:1 Country using `NumPeriods'
drop _merge

preserve
collapse (mean) NumIndiv NumSessions NumsubSessions NumPeriods NumsubRounds NumGroups, by(Country)
set obs `=_N+1'
decode Country, gen(country)
replace country="Total" if country==""
drop Country

foreach var in NumIndiv NumSessions NumsubSessions NumPeriods NumsubRounds NumGroups {
egen `var'_total = total(`var')
replace `var'=`var'_total if `var'==.
drop `var'_total
}

gen Num=_n
labmask Num, values(country)

est clear
estpost tabstat NumIndiv NumSessions NumsubSessions NumPeriods NumsubRounds NumGroups, by(Num) nototal

esttab using "TableS2.tex", cells("NumIndiv NumSessions NumsubSessions NumPeriods NumsubRounds NumGroups") ///
collabels("\# Participants" "\# Sessions" "\# Sub-Sessions" "\# Periods" "\# Rounds" "\# Groups", lhs("Country")) ///
noobs nomtitle replace
restore

*************************************************************************************************************
**************************Table S3: Summary Statistics by Country (Demographics)*****************************
*************************************************************************************************************

preserve
bysort UniqueID: keep if _n==1

est clear
label var Gender "Fraction Women"
label var Volunteer "Fraction Who Volunteer"
label var CRT_dich "Fraction High CRT"

forvalues i = 1(1)14 {
eststo sumstats`i': estpost summarize ///
age Gender Volunteer plop_unempl plop_comp plop_incdist plop_priv CRT_dich if Country==`i'
}

esttab sumstats1 sumstats2 sumstats3 sumstats4 sumstats5 sumstats6 sumstats7 sumstats8 sumstats9 sumstats10 sumstats11 sumstats12 sumstats13 sumstats14 using "TableS3.tex", ///
cells("mean(fmt(1))") mlabels("AUS" "AUT" "CHN" "COL" "DNK" "EGY" "DEU" "GTM" "JPN" "KEN" "ESP" "GBR" "USA" "URY") ///
collabels(,none) label replace
restore


*************************************************************************************************************
******************************Table S4: Average Proposer Outcomes by Country*********************************
*************************************************************************************************************

preserve
keep if proposer==1

est clear
label var MWC "Fraction MWC"
label var equality "Average Equality"

forvalues i = 1(1)14 {
eststo sumstats2`i': estpost summarize ///
MWC equality if Country==`i'
}

esttab sumstats21 sumstats22 sumstats23 sumstats24 sumstats25 sumstats26 sumstats27 sumstats28 sumstats29 sumstats210 sumstats211 sumstats212 sumstats213 sumstats214 using "TableS4.tex", ///
cells("mean(fmt(2))") mlabels("AUS" "AUT" "CHN" "COL" "DNK" "EGY" "DEU" "GTM" "JPN" "KEN" "ESP" "GBR" "USA" "URY") ///
collabels(,none) label noobs replace
restore

*************************************************************************************************************
**********Table S6: Equality, Exclusionary Alliances, and Individual-Level Predictors (Robustness)***********
*************************************************************************************************************

est clear
foreach var in equality MWC { 

areg `var' Gender CRT_dich PolAttIndex if proposer==1 & accepted==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col1
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Accepted Only"

areg `var' Gender CRT_dich PolAttIndex if proposer==1, cl(UniqueID) absorb(Country period)
estadd scalar n = e(N)
estimates store `var'_col2
estadd local SE "Indiv"
estadd local FE "Country \& Period"
estadd local Proposals "All"

areg `var' Gender CRT_dich PolAttIndex if proposer==1 & period>10, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col3
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Periods 11-15 Only"

areg `var' Gender CRT_dich PolAttIndex if proposer==1 & period==15, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col4
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Period 15 Only"

areg `var' Gender CRT_dich PolAttIndex if proposer==1, cl(SessionID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col5
estadd local SE "Session"
estadd local FE "Country"
estadd local Proposals "All"	
estadd local Controls " "	

areg `var' Gender CRT_dich PolAttIndex if proposer==1, cl(MatchGroup) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col6
estadd local SE "Matching"
estadd local FE "Country"
estadd local Proposals "All"
estadd local Controls " "	

areg `var' Gender CRT_dich PolAttIndex showupperc if proposer==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col7
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"	
estadd local Controls "Show-up/fund"	

areg `var' Gender CRT_dich PolAttIndex PPPAdjustedMeanEarnings if proposer==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col8
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"	
estadd local Controls "Purchasing Power Parity"	

areg `var' Gender CRT_dich PolAttIndex if proposer==1, cl(SessionID) absorb(SessionID)
estadd scalar n = e(N)
estimates store `var'_col9
estadd local SE "Session"
estadd local FE "Session"
estadd local Proposals "All"	
estadd local Controls " "	
}

*Panel A: Equality*

esttab equality_col1 equality_col2 equality_col3 equality_col4 equality_col5 equality_col6 equality_col7 equality_col8 equality_col9 using "TableS6_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Controls, labels("N" "Clustering" "FE" "Proposals" "Controls") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

*Panel B: MWC*

esttab MWC_col1 MWC_col2 MWC_col3 MWC_col4 MWC_col5 MWC_col6 MWC_col7 MWC_col8 MWC_col9 using "TableS6_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Controls, labels("N" "Clustering" "FE" "Proposals" "Controls") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	  
  
*************************************************************************************************************
****Table S7: Equality, Exclusionary Alliances, and Individual-Level Predictors (with Country Weighting)*****
*************************************************************************************************************

preserve
keep if proposer==1
gen case=_n

*Generate number of observations by country*
egen Country_NProp = count(case), by (Country)

*Generate weight by country, there are 14 countries*
gen weight_C=(1/Country_NProp)*(1/14)

*Each country's weights add to 1, so each country is weighted equally in the analysis*
reg equality Gender CRT_dich PolAttIndex [weight=weight_C] if proposer==1

*Set weight*
svyset [pweight=weight_C]

*Testing: each country should be weighted equally*
svy: tab Country

est clear
foreach var in equality MWC { 
regress `var' Gender [pweight=weight_C] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col1
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Country"

regress `var' CRT_dich [pweight=weight_C] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col2
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Country"

regress `var' PolAttIndex [pweight=weight_C] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col3
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Country"

regress `var' Gender CRT_dich PolAttIndex [pweight=weight_C] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col4
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Country"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_C] if proposer==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col5
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"
estadd local Weights "Country"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_C] if proposer==1 & accepted==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col6
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Accepted Only"
estadd local Weights "Country"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_C] if proposer==1, cl(UniqueID) absorb(Country period)
estadd scalar n = e(N)
estimates store `var'_col7
estadd local SE "Indiv"
estadd local FE "Country \& Period"
estadd local Proposals "All"
estadd local Weights "Country"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_C] if proposer==1 & period>10, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col8
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Periods 11-15 Only"
estadd local Weights "Country"

}

*Panel A: Equality*

esttab equality_col1 equality_col2 equality_col3 equality_col4 equality_col5 equality_col6 equality_col7 equality_col8  using "TableS7_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Weights, labels("N" "Clustering" "FE" "Proposals" "Weights") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

*Panel B: MWC*

esttab MWC_col1 MWC_col2 MWC_col3 MWC_col4 MWC_col5 MWC_col6 MWC_col7 MWC_col8 using "TableS7_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Weights, labels("N" "Clustering" "FE" "Proposals" "Weights") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

svyset, clear

restore

*******************************************************************************************************************
*Table S8: Equality, Exclusionary Alliances, and Individual and Country-Level Predictors (with Proposer Weighting)*
*******************************************************************************************************************

preserve
keep if proposer==1
gen case=_n

*Identify number of unique proposers (1482)*
by UniqueID, sort: gen nvals = _n == 1 
count if nvals 

*Generate number of observations by proposer*
egen Indiv_NProp = count(case), by (UniqueID)

*Generate weight by proposer*
gen weight_I=(1/Indiv_NProp)*(1/1482)

reg equality Gender CRT_dich PolAttIndex [weight=weight_I] if proposer==1

*Set weight*
svyset [pweight=weight_I]

*Testing: each individual proposer should be weighted equally*
gen test_weight = weight_I * Indiv_NProp * 1482
sum test_weight
drop test_weight

est clear
foreach var in equality MWC { 
regress `var' Gender [pweight=weight_I] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col1
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Proposer"

regress `var' CRT_dich [pweight=weight_I] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col2
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Proposer"

regress `var' PolAttIndex [pweight=weight_I] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col3
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Proposer"

regress `var' Gender CRT_dich PolAttIndex [pweight=weight_I] if proposer==1, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col4
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Weights "Proposer"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_I] if proposer==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col5
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"
estadd local Weights "Proposer"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_I] if proposer==1 & accepted==1, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col6
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Accepted Only"
estadd local Weights "Proposer"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_I] if proposer==1, cl(UniqueID) absorb(Country period)
estadd scalar n = e(N)
estimates store `var'_col7
estadd local SE "Indiv"
estadd local FE "Country \& Period"
estadd local Proposals "All"
estadd local Weights "Proposer"

areg `var' Gender CRT_dich PolAttIndex [pweight=weight_I] if proposer==1 & period>10, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col8
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Periods 11-15 Only"
estadd local Weights "Proposer"

}

*Panel A: Equality*

esttab equality_col1 equality_col2 equality_col3 equality_col4 equality_col5 equality_col6 equality_col7 equality_col8 using "TableS8_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Weights, labels("N" "Clustering" "FE" "Proposals" "Weights") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

*Panel B: MWC*

esttab MWC_col1 MWC_col2 MWC_col3 MWC_col4 MWC_col5 MWC_col6 MWC_col7 MWC_col8 using "TableS8_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Weights, labels("N" "Clustering" "FE" "Proposals" "Weights") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

svyset, clear

restore

*****************************************************************************************************
*Table S9: Equality, Exclusionary Alliances, and Individual and Country-Level Predictors (Averages)*
*****************************************************************************************************

preserve
keep if proposer==1
gen case=_n
egen NumberPropose = count(case), by(UniqueID)
collapse (mean) MWC equality Gender CRT_dich PolAttIndex NumberPropose Country, by(UniqueID)

est clear
foreach var in equality MWC { 
regress `var' Gender, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col1
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Controls " "

regress `var' CRT_dich, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col2
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Controls " "

regress `var' PolAttIndex, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col3
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Controls " "

regress `var' Gender CRT_dich PolAttIndex, cl(UniqueID)
estadd scalar n = e(N)
estimates store `var'_col4
estadd local SE "Indiv"
estadd local FE " "
estadd local Proposals "All"
estadd local Controls " "

areg `var' Gender CRT_dich PolAttIndex, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col6
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"
estadd local Controls " "

areg `var' Gender CRT_dich PolAttIndex NumberPropose, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col7
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"
estadd local Controls "\# Times Proposed"
}
restore  

preserve
keep if proposer==1
keep if accepted==1
collapse (mean) MWC equality Gender CRT_dich PolAttIndex Country, by(UniqueID)

foreach var in equality MWC {  
areg `var' Gender CRT_dich PolAttIndex, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col8
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Accepted"
estadd local Controls " "

}
restore  

preserve
keep if proposer==1
keep if period>10
collapse (mean) MWC equality Gender CRT_dich PolAttIndex Country, by(UniqueID)

foreach var in equality MWC { 
areg `var' Gender CRT_dich PolAttIndex, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col9
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "Periods 11-15"
estadd local Controls " "

}
restore  

*Panel A: Equality*

esttab equality_col1 equality_col2 equality_col3 equality_col4 equality_col6 equality_col7 equality_col8 equality_col9 using "TableS9_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Controls, labels("N" "Clustering" "FE" "Proposals" "Controls") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

*Panel B: MWC*

esttab MWC_col1 MWC_col2 MWC_col3 MWC_col4 MWC_col6 MWC_col7 MWC_col8 MWC_col9 using "TableS9_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Controls, labels("N" "Clustering" "FE" "Proposals" "Controls") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender CRT_dich PolAttIndex) /// 
order(Gender CRT_dich PolAttIndex) /// 
varlabels (Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	
drop _est_equality_col1 _est_equality_col2 _est_equality_col3 _est_equality_col4 _est_equality_col5 _est_equality_col6 _est_equality_col7 _est_equality_col8 _est_equality_col9 _est_MWC_col1 _est_MWC_col2 _est_MWC_col3 _est_MWC_col4 _est_MWC_col5 _est_MWC_col6 _est_MWC_col7 _est_MWC_col8 _est_MWC_col9
  
*****************************************************************************************************
********************Table S10: CRT Results with Categorical Operationalization***********************
*****************************************************************************************************
  
preserve
keep if proposer==1
est clear
foreach var in equality MWC { 
areg `var' crteach2  crteach3 crteach4, cl(UniqueID) absorb(Country)
estadd scalar n = e(N)
estimates store `var'_col1
estadd local SE "Indiv"
estadd local FE "Country"
estadd local Proposals "All"
}
restore  

esttab equality_col1 MWC_col1 using "TableS10.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE Proposals Controls, labels("N" "Clustering" "FE" "Proposals") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(crteach2  crteach3 crteach4) /// 
order(crteach2  crteach3 crteach4) /// 
varlabels (crteach2 "1/3 Correct"  crteach3 "2/3 Correct" crteach4 "3/3 Correct") ///
mlabels(none) collabels(none)	
  
*****************************************************************************************************
*****************************Table S11: Proposal Equality by Country*********************************
*****************************************************************************************************

preserve
est clear
local i = 1

*Panel A: Gender*
foreach var in equality MWC {
forvalues i = 1(1)14 {
reghdfe `var' Gender  if proposer==1 & Country==`i', cl(UniqueID) absorb(SessionID period) maxiter(1000)
estadd scalar n = e(N)
estadd local SE "Indiv"
estadd local FE "Session \& Period"
estimates store `var'`i'_Gender

*Panel B: CRT*
reghdfe `var' CRT_dich if proposer==1 & Country==`i', cl(UniqueID) absorb(SessionID period) maxiter(1000)
estadd scalar n = e(N)
estadd local SE "Indiv"
estadd local FE "Session \& Period"
estimates store `var'`i'_CRT

*Panel C: Political attitudes*  
reghdfe `var' PolAttIndex if proposer==1 & Country==`i', cl(UniqueID) absorb(SessionID period) maxiter(1000)
estadd scalar n = e(N)
estadd local SE "Indiv"
estadd local FE "Session \& Period"
estimates store `var'`i'_Pol

  }
}

*Panel A: Gender*
esttab equality1_Gender equality2_Gender equality3_Gender equality4_Gender equality5_Gender equality6_Gender equality7_Gender equality8_Gender equality9_Gender equality10_Gender equality11_Gender equality12_Gender equality13_Gender equality14_Gender using "TableS11_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender) /// 
order(Gender) /// 
varlabels (Gender "Female") ///
mlabels("AUS" "AUT" "CHN" "COL" "DNK" "EGY" "DEU" "GTM" "JPN" "KEN" "ESP" "GBR" "USA" "URY") collabels(none)	

*Panel B: CRT*
esttab equality1_CRT equality2_CRT equality3_CRT equality4_CRT equality5_CRT equality6_CRT equality7_CRT equality8_CRT equality9_CRT equality10_CRT equality11_CRT equality12_CRT equality13_CRT equality14_CRT using "TableS11_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(CRT_dich) /// 
order(CRT_dich) /// 
varlabels (CRT_dich "High CRT Score" ) ///
mlabels(none) collabels(none)	

*Panel C: Political Attitudes*
esttab equality1_Pol equality2_Pol equality3_Pol equality4_Pol equality5_Pol equality6_Pol equality7_Pol equality8_Pol equality9_Pol equality10_Pol equality11_Pol equality12_Pol equality13_Pol equality14_Pol using "TableS11_C.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(PolAttIndex) /// 
order(PolAttIndex) /// 
varlabels (PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)" ) ///
mlabels(none) collabels(none)	

*****************************************************************************************************
*****************************Table S12: Proposal Exclusion by Country********************************
*****************************************************************************************************

*Panel A: Gender*
esttab MWC1_Gender MWC2_Gender MWC3_Gender MWC4_Gender MWC5_Gender MWC6_Gender MWC7_Gender MWC8_Gender MWC9_Gender MWC10_Gender MWC11_Gender MWC12_Gender MWC13_Gender MWC14_Gender using "TableS12_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(Gender) /// 
order(Gender) /// 
varlabels (Gender "Female") ///
mlabels("AUS" "AUT" "CHN" "COL" "DNK" "EGY" "DEU" "GTM" "JPN" "KEN" "ESP" "GBR" "USA" "URY") collabels(none)	

*Panel B: CRT*
esttab MWC1_CRT MWC2_CRT MWC3_CRT MWC4_CRT MWC5_CRT MWC6_CRT MWC7_CRT MWC8_CRT MWC9_CRT MWC10_CRT MWC11_CRT MWC12_CRT MWC13_CRT MWC14_CRT using "TableS12_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(CRT_dich) /// 
order(CRT_dich) /// 
varlabels (CRT_dich "High CRT Score" ) ///
mlabels(none) collabels(none)	

*Panel C: Political Attitudes*
esttab MWC1_Pol MWC2_Pol MWC3_Pol MWC4_Pol MWC5_Pol MWC6_Pol MWC7_Pol MWC8_Pol MWC9_Pol MWC10_Pol MWC11_Pol MWC12_Pol MWC13_Pol MWC14_Pol using "TableS12_C.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(PolAttIndex) /// 
order(PolAttIndex) /// 
varlabels (PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)" ) ///
mlabels(none) collabels(none)	
restore

****************************************************************************************
*Table S13: Group Composition, Proposal Equality and Exclusion: Accepted Proposals Only*
****************************************************************************************

preserve
est clear
foreach var in equality MWC {
foreach y in N_Women N_Left N_CRT {
regress `var' `y' if proposer==1 & accepted==1, cl(UniqueID)
estadd scalar n = e(N)
estadd local SE "Indiv"
estimates store `var'_`y'
  }
regress `var' N_Women N_Left N_CRT if proposer==1 & accepted==1, cl(UniqueID)
estadd scalar n = e(N)
estadd local SE "Indiv"
estimates store `var'_Full
}

esttab equality_N_Women equality_N_Left equality_N_CRT equality_Full using "TableS13_A.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE, labels("N" "Clustering") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(N_Women N_Left N_CRT) /// 
order(N_Women N_Left N_CRT) /// 
varlabels (N_Women "\# Women in Group" N_Left "\# Left-Leaning in Group" N_CRT "\# High CRT in Group") ///
mlabels(none) collabels(none)	

esttab MWC_N_Women MWC_N_Left MWC_N_CRT MWC_Full using "TableS13_B.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE, labels("N" "Clustering") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(N_Women N_Left N_CRT) /// 
order(N_Women N_Left N_CRT) /// 
varlabels (N_Women "\# Women in Group" N_Left "\# Left-Leaning in Group" N_CRT "\# High CRT in Group") ///
mlabels(none) collabels(none)	
restore

****************************************************************************************
*Table S14: Group Composition, Proposal Equality and Exclusion: Accepted Proposals Only*
****************************************************************************************

tabout N_Women N_Left N_CRT if proposer==1 & accepted==1 using "TableS14.tex", /// 
c(mean equality mean MWC) sum oneway style(tex) f(2 2)  npos(both) replace 

************************************************************************
*Table S15: Comparison of Countries by Whether Previous Study Conducted*
************************************************************************

preserve
est clear
areg MWC USUKESP  if proposer==1, cl(UniqueID) absorb(period)
estadd scalar n = e(N)
estadd local SE "Indiv"
estadd local FE "Period"
estimates store MWC_Comparison

areg equality USUKESP if proposer==1, cl(UniqueID) absorb(period)
estadd scalar n = e(N)
estadd local SE "Indiv"
estadd local FE "Period"
estimates store Equality_Comparison

esttab Equality_Comparison MWC_Comparison using "TableS15.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(USUKESP) /// 
order(USUKESP) /// 
varlabels (USUKESP "US, UK, Spain") ///
mlabels(none) collabels(none)	
restore

****************************************************
*Figure S2: Learning Across Outcomes and Predictors*
*****************************************************

foreach var in MWC equality {
preserve
keep if proposer==1 & Gender!=.
collapse (mean) `var', by(period Gender)
capture label var equality "Average Proposal Equality"
capture label var MWC "Fraction of Exclusionary Alliances Proposed"

*Panel A*   
recode Gender (0=1) (1=0)

twoway connected `var' period if Gender == 0, msymbol(circle_hollow) ///
||     connected `var' period if Gender == 1, msymbol(triangle)  ///
, legend(order(1 "Female" 2 "Male")) ///
 ytitle(" ") yla(, ang(h)) xla(1/15) graphregion(color(white) lc(white) lw(med)) ylab(,angle(0) nogrid) xlab(, nogrid) ///
 title("{bf:`: variable label `var''}", size(small)) subtitle(" ") 
   graph save "`var'_Gender.gph", replace
restore
}

*Panel B*   
foreach var in MWC equality {
preserve
keep if proposer==1 & CRT_dich!=. 
collapse (mean) `var', by(period CRT_dich)

twoway connected `var' period if CRT_dich == 0, msymbol(circle_hollow) ///
||     connected `var' period if CRT_dich == 1, msymbol(triangle) ///
, legend(order(1 "Low CRT" 2 "High CRT")) ///
 ytitle(" ") yla(, ang(h)) xla(1/15) graphregion(color(white) lc(white) lw(med)) ylab(,angle(0) nogrid) xlab(, nogrid)
   graph save "`var'_CRT.gph", replace
  restore
 }

*Panel C*
foreach var in MWC equality {
preserve
keep if proposer==1 & Above_Median!=. 
collapse (mean) `var', by(period Above_Median)
recode Above_Median (0=1) (1=0)

 twoway connected `var' period if Above_Median == 0, msymbol(circle_hollow) ///
||     connected `var' period if Above_Median == 1, msymbol(triangle)  ///
, legend(order(1 "Left-Leaning" 2 "Right-Leaning")) ///
 ytitle(" ") yla(, ang(h)) xla(1/15) graphregion(color(white) lc(white) lw(med)) ylab(,angle(0) nogrid) xlab(, nogrid)
   graph save "`var'_Pol.gph", replace
 restore
 }

*Edit and Combine*
grc1leg "equality_Gender.gph" "MWC_Gender.gph", legendfrom("MWC_Gender.gph") ring(0) pos(11.5) 
gr_edit .legend.plotregion1.DragBy -5.848988639512275 -16.155223053477404
gr_edit .plotregion1.graph1.title.style.editstyle size(medium) editcopy
gr_edit .plotregion1.graph1.title.DragBy .5541701302300152 -7.34275422554724
gr_edit .plotregion1.graph2.title.style.editstyle size(medium) editcopy
gr_edit .plotregion1.graph2.title.DragBy .2770850651149886 -3.602105846494851
gr_edit .plotregion1.graph2.title.DragBy .1385425325574943 1.801052923247501
graph export "FigureS2_A.pdf", as(pdf) replace
grc1leg "equality_CRT.gph" "MWC_CRT.gph", legendfrom("MWC_CRT.gph") ring(0) pos(1) 
gr_edit .legend.DragBy 1.523967858132494 -85.50568024383483
graph export "FigureS2_B.pdf", as(pdf) replace
grc1leg "equality_Pol.gph" "MWC_Pol.gph", legendfrom("MWC_Pol.gph") ring(0) pos(1) 
gr_edit .legend.DragBy 1.523967858132494 -79.50568024383483
graph export "FigureS2_C.pdf", as(pdf) replace

***************************************************
*Figure S3: Learning Across Outcomes and Countries*
***************************************************

*Top Panel*
foreach var in MWC equality {
preserve
keep if proposer==1
collapse (mean) `var', by(Country period)
capture label var MWC "Fraction of Exclusionary Alliances Proposed"
capture label var equality "Average Proposal Equality"

twoway connected `var' period if Country == 1 ///
||     connected `var' period if Country == 2 ///
||     connected `var' period if Country == 3 ///
||     connected `var' period if Country == 4 ///
||     connected `var' period if Country == 5 ///
||     connected `var' period if Country == 6 ///
||    connected `var' period if Country == 7 ///
||	 connected `var' period if Country == 8 ///
||     connected `var' period if Country == 9 ///
||     connected `var' period if Country == 10 ///
||    connected `var' period if Country == 11 ///
||	 connected `var' period if Country == 12 ///
||    connected `var' period if Country == 13 ///
||	 connected `var' period if Country == 14 ///
, legend(order(1 "Australia" 2 " Austria" 3 "China" 4 "Colombia" 5 "Denmark" 6 "Egypt" 7 "Germany" 8 "Guatemala" 9 "Japan" 10 "Kenya" 11 "Spain" 12 "UK" 13 "USA" 14 "Uruguay") rows(3)) ///
 ytitle("`:variable label `var''") yla(, ang(h)) xla(1/15) graphregion(color(white) lc(white) lw(med)) ylab(,angle(0) nogrid)
 graph save "FigureS3Top_`var'.gph", replace
restore
}
grc1leg "FigureS3Top_equality.gph" "FigureS3Top_MWC.gph", legendfrom("FigureS3Top_equality.gph") ring(2) pos(11.5) xcommon 
graph export "FigureS3_toppanel.pdf", as(pdf) replace

*Bottom Panel*
foreach var in MWC equality {
preserve
keep if proposer==1
collapse (mean) `var', by(Country period)
capture label var MWC "Fraction of Exclusionary Alliances Proposed"
capture label var equality "Average Proposal Equality"

twoway (scatter `var' period if Country==1) ///
          (scatter `var' period if Country==2) ///
		  (scatter `var' period if Country==3) ///
          (scatter `var' period if Country==4) ///
          (scatter `var' period if Country==5) ///
          (scatter `var' period if Country==6) ///
          (scatter `var' period if Country==7) ///
          (scatter `var' period if Country==8) ///
          (scatter `var' period if Country==9) ///
          (scatter `var' period if Country==10) ///
          (scatter `var' period if Country==11) ///
          (scatter `var' period if Country==12) ///
          (scatter `var' period if Country==13) ///
          (scatter `var' period if Country==14) ///
       (lfit `var' period if Country==1, pstyle(p1))  ///
       (lfit `var' period if Country==2, pstyle(p2) ) ///
	   (lfit `var' period if Country==3, pstyle(p3) ) ///
	   (lfit `var' period if Country==4, pstyle(p4) ) ///
	   (lfit `var' period if Country==5, pstyle(p5) ) ///
	   (lfit `var' period if Country==6, pstyle(p6) ) ///
	   (lfit `var' period if Country==7, pstyle(p7) ) ///
	   (lfit `var' period if Country==8, pstyle(p8) ) ///
	   (lfit `var' period if Country==9, pstyle(p9) ) ///
	   (lfit `var' period if Country==10, pstyle(p10) ) ///
	   (lfit `var' period if Country==11, pstyle(p11) ) ///
	   (lfit `var' period if Country==12, pstyle(p12) ) ///
	   (lfit `var' period if Country==13, pstyle(p13) ) ///
	   (lfit `var' period if Country==14, pstyle(p14) ), ///
       legend(order(1 "Australia" 2 " Austria" 3 "China" 4 "Colombia" 5 "Denmark" 6 "Egypt" 7 "Germany" 8 "Guatemala" 9 "Japan" 10 "Kenya" 11 "Spain" 12 "UK" 13 "USA" 14 "Uruguay") rows(3)) ///
 ytitle("`:variable label `var''") yla(, ang(h)) xla(1/15) graphregion(color(white) lc(white) lw(med)) ylab(,angle(0) nogrid)
 graph save "FigureS3Bottom_`var'.gph", replace
restore
}

grc1leg "FigureS3Bottom_equality.gph" "FigureS3Bottom_MWC.gph", legendfrom("FigureS3Bottom_equality.gph") ring(2) pos(11.5) xcommon 
graph export "FigureS3_bottompanel.pdf", as(pdf) replace

********************************************************
*Table S16: Kruksal Wallis Tests, by Outcome and Period*
********************************************************

cap prog drop mystats
program mystats, rclass
return scalar p_adj= chi2tail(r(df), r(chi2_adj))
return scalar Chi2_adj =  r(chi2_adj)
return scalar  DF =  r(df)
return scalar p= chi2tail(r(df), r(chi2))
return scalar  Chi2 =   r(chi2)
end

est clear
mat Holder = J(14,2,.)

*Panel A*
preserve
keep if proposer==1
collapse (mean) equality, by(Country MatchGroup)

local i=0

foreach x in equality {
local ++i
di `i'
kwallis `x', by(Country)
mystats
return list
local Chi2_adj: display %05.3f `r(Chi2_adj)'
local p_adj: display %05.3f `r(p_adj)'
mat r`i'`x'=  `Chi2_adj'
mat p`i'`x'=  `p_adj'
mat Holder[`i',1]= `Chi2_adj'
mat Holder[`i',2]= `p_adj'
}
restore 

matlist Holder

local i=1
foreach x in equality {
forvalues bw = 3(3)15 {
	preserve
	keep if proposer==1
	keep if period<=`bw' & period>(`bw' - 3)
	collapse (mean) `x', by(Country MatchGroup)
	local ++i
	di `i'
	kwallis `x', by(Country)
	mystats
	return list
	local Chi2_adj: display %05.3f `r(Chi2_adj)'
	local p_adj: display %05.3f `r(p_adj)'
	mat r`i'`x'=  `Chi2_adj'
	mat p`i'`x'=  `p_adj'
	mat Holder[`i',1]= `Chi2_adj'
	mat Holder[`i',2]= `p_adj'
	restore
  }	
}

local i=6
foreach x in equality {
preserve
keep if proposer==1
keep if period==15
collapse (mean) `x', by(Country MatchGroup)
local ++i
di `i'
kwallis `x', by(Country)
mystats
return list
local Chi2_adj: display %05.3f `r(Chi2_adj)'
local p_adj: display %05.3f `r(p_adj)'
mat r`i'`x'=  `Chi2_adj'
mat p`i'`x'=  `p_adj'
mat Holder[`i',1]= `Chi2_adj'
mat Holder[`i',2]= `p_adj'
restore
} 

*Panel B*
preserve
keep if proposer==1
collapse (mean) MWC, by(Country MatchGroup)

local i=7

foreach x in MWC {
local ++i
di `i'
kwallis `x', by(Country)
mystats
return list
local Chi2_adj: display %05.3f `r(Chi2_adj)'
local p_adj: display %05.3f `r(p_adj)'
mat r`i'`x'=  `Chi2_adj'
mat p`i'`x'=  `p_adj'
mat Holder[`i',1]= `Chi2_adj'
mat Holder[`i',2]= `p_adj'
}
restore 

local i=8
foreach x in MWC {
forvalues bw = 3(3)15 {
	preserve
	keep if proposer==1
	keep if period<=`bw' & period>(`bw' - 3)
	collapse (mean) `x', by(Country MatchGroup)
	local ++i
	di `i'
	kwallis `x', by(Country)
	mystats
	return list
	local Chi2_adj: display %05.3f `r(Chi2_adj)'
	local p_adj: display %05.3f `r(p_adj)'
	mat r`i'`x'=  `Chi2_adj'
	mat p`i'`x'=  `p_adj'
	mat Holder[`i',1]= `Chi2_adj'
	mat Holder[`i',2]= `p_adj'
	restore
  }	
}

local i=13
foreach x in MWC {
preserve
keep if proposer==1
keep if period==15
collapse (mean) `x', by(Country MatchGroup)
local ++i
di `i'
kwallis `x', by(Country)
mystats
return list
local Chi2_adj: display %05.3f `r(Chi2_adj)'
local p_adj: display %05.3f `r(p_adj)'
mat r`i'`x'=  `Chi2_adj'
mat p`i'`x'=  `p_adj'
mat Holder[`i',1]= `Chi2_adj'
mat Holder[`i',2]= `p_adj'
restore
} 

local kruskalr "All 0-3 4-6 7-9 10-12 13-15 15 All 0-3 4-6 7-9 10-12 13-15 15"
local kruskalc "{\chi}^2 p-value"
mat rownames Holder = `kruskalr'
mat colnames Holder = `kruskalc' 

matlist Holder

esttab matrix(Holder, fmt(%9.2f)) using "TableS16.tex", replace  ///
starlevels(* .05 ** .01 *** .001) ///
mlabels(none) collabels(none)	

********************************************************************
*Table S20: Stated and Revealed Preferences: Exclusionary Alliances*
********************************************************************

preserve
keep if proposer==1
collapse (mean) MWC equality mwc mwc_others mwc_bonus mwc_bonus_others Gender CRT_dich PolAttIndex Country, by(UniqueID)

foreach var in mwc mwc_others mwc_bonus mwc_bonus_others {
areg MWC `var' Gender CRT_dich PolAttIndex, cl(UniqueID) absorb(Country)
estimates store `var'_col	
estadd scalar n = e(N)
estadd local SE "Indiv"
estadd local FE "Country"
}

esttab mwc_col mwc_others_col mwc_bonus_col mwc_bonus_others_col using "TableS20.tex", replace  ///
cells(b(fmt(%9.2f) star) se(par fmt(%9.2f))) style(tex) ///
stats(n SE FE, labels("N" "Clustering" "FE") ///
fmt(%9.0f %9.0f %9.0f %9.0f)) ///
starlevels(* .05 ** .01 *** .001) ///
keep(mwc mwc_others mwc_bonus mwc_bonus_others Gender CRT_dich PolAttIndex) /// 
order(mwc mwc_others mwc_bonus mwc_bonus_others Gender CRT_dich PolAttIndex) /// 
varlabels (mwc "Acceptability (Self)" mwc_others "Likelihood (Others)" mwc_bonus "Acceptability (Self, Bonus)" mwc_bonus_others "Likelihood (Others, Bonus)" Gender "Female" CRT_dich "High CRT Score" PolAttIndex "Political Attitudes Index \\ (Right $\rightarrow$ Left)") ///
mlabels(none) collabels(none)	

***********************************************
*Figure S7: Revealed versus Stated Preferences*
***********************************************

areg MWC i.mwc Gender CRT_dich PolAttIndex,  absorb(Country) cl(UniqueID)
margins, at(mwc=(1(1)7))
marginsplot, recast(line) plot1opts(lcolor(gs8)) ciopt(color(black%20)) recastci(rarea) title("") xtitle("Perceived Acceptability of Two-Way Split") ytitle("Fraction of Times Proposed Two-Way Split") subtitle("{bf:Revealed and Stated Preferences}") graphregion(color(white) lc(white) lw(med)) ylab(,angle(0))
graph export "FigureS7.pdf", as(pdf) replace

restore
